package com.practice.ajCollections010.list.arraylist;

import java.util.ArrayList;
import java.util.List;

/**
 * 移除集合中的元素
 * @TODO 优雅的移除 ArrayList 中的元素
 */
public class RemoveElement {

    public static void main(String[] args) {
        List list = new ArrayList(10);
        for (int i = 0; i < 12; i++) {
            list.add(Integer.toString(i));
        }
        list.stream().forEach(item -> {
            System.out.println(item);
        });
        // 根据下标删除集合中的元素，删除后通过数组拷贝将后续的元素向左移动一位
        list.remove(5);
        // 删除匹配到的第一个元素，匹配则删除，不匹配原集合保持不变，删除后通过数组拷贝的方式将后续元素向左移动一位
        list.remove("7");

        List<String> list2 = new ArrayList<>(10);
        list2.add("2");
        list2.add("4");

        // 删除 list 中所有与 list2 中所匹配的元素
        list.removeAll(list2);

        System.out.println("===========================");
        list.stream().forEach(item -> {
            System.out.println(item);
        });
        // 清空集合
        list.clear();


    }
}
